*
* $Id$
*
* $Log: xinneu.F,v $
* Revision 1.1.1.1  2002/06/16 15:18:43  hristov
* Separate distribution  of Geant3
*
* Revision 1.1.1.1  1999/05/18 15:55:22  fca
* AliRoot sources
*
* Revision 1.1.1.1  1995/10/24 10:22:04  cernlib
* Geant
*
*
#include "geant321/pilot.h"
*CMZ :  3.21/02 29/03/94  15.41.46  by  S.Giani
*-- Author :
*$ CREATE XINNEU.FOR
*COPY XINNEU
*
*=== xinneu ===========================================================*
*
      FUNCTION XINNEU ( E, ZTAR, BBETAA )
 
#include "geant321/dblprc.inc"
#include "geant321/dimpar.inc"
#include "geant321/iounit.inc"
*
*----------------------------------------------------------------------*
*----------------------------------------------------------------------*
*
#include "geant321/isotop.inc"
#include "geant321/xsepar.inc"
*
      IZ = NINT ( ZTAR )
      EEE = 0.015D+00 * ( 1.D+00 + 1.D-04 * ZTAR * ZTAR )
      TMPZZN = 2.D-01 * ZZNXSE (IZ)
      EEE = MAX ( EEE, TMPZZN )
      IF ( E .GT. 0.1D+00 ) THEN
         ATAR = 0.D+00
         DO 25 IS = ISONDX (1,IZ), ISONDX (2,IZ)
             ATAR = ATAR +  ISOMNM (IS) * ABUISO (IS)
   25    CONTINUE
         EMEV = E * 1.D+03
         XINNEU = SITSAO ( EMEV, IZ, ATAR )
      ELSE IF ( E .LT. EEE ) THEN
         X = 1.D+01 * EEE
         XSENE1 = AANXSE (IZ) * ( X - ZZNXSE (IZ) ) / X * ( 1.D+00
     &          + BBNXSE (IZ) * X / ( 1.D+00 + (CCNXSE(IZ)*X)**2 )
     &          + DDNXSE (IZ) * X * X / ( 1.D+00 + (EENXSE(IZ)*X)**4 ))
         BBCOFF = XSENE1 / ( 1.D+00 + BBETAA / EEE )
         AACOFF = BBCOFF * BBETAA
         XINNEU = AACOFF / E + BBCOFF
      ELSE IF ( E .GT. 0.012D+00 ) THEN
         X  = 1.D+01 * E
         XINNEU = AANXSE (IZ) * ( X - ZZNXSE (IZ) ) / X * ( 1.D+00
     &          + BBNXSE (IZ) * X / ( 1.D+00 + (CCNXSE(IZ)*X)**2 )
     &          + DDNXSE (IZ) * X * X / ( 1.D+00 + (EENXSE(IZ)*X)**4 ))
      ELSE
         XINNEU = 0.D+00
      END IF
      XINNEU = MAX ( XINNEU, ZERZER )
*=== End of function xinneu ===========================================*
      RETURN
      END
